#ifndef SCRIPT_DOCUMENT_H
#define SCRIPT_DOCUMENT_H

#include "idocument.h"

class ScriptDocument : public IDocument
{
    Q_OBJECT

public:
    ScriptDocument(const QString& name);
    ~ScriptDocument();

    void setValid(bool valid);
    bool isValid() const;

    bool isFuture() const;

    bool isDirty() const;
    QString name() const;

    void setDirty(bool dirty = true);
    void setFuture(bool future = true);

    void rename(const QString& name);

    QTextDocument* data() const;

private:
    bool m_valid;
    bool m_dirty;
    bool m_future;
    QString m_name;
    QTextDocument* m_data;
};

#endif
